package com.finger.forest.http.presenter;

import java.io.File;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
import java.util.Map;

import okhttp3.MultipartBody;
import okhttp3.RequestBody;

/**
 * @author jzj
 * @date 2020/11/3
 * @desc
 */
public class RegisterPresenter extends RegisterContract.presenter {

    /**
     * 用户登录
     *
     * @param username 用户名
     * @param password 密码
     * @param isonline 状态 0：离线；1：在线
     */
    @Override
    public void userLogin(String username, String password, String isonline) {
        manager.userLogin(username, password, isonline);
    }

    /**
     * 首页用户消息列表
     *
     * @param maps
     */
    @Override
    public void userNoticeList(Map<String, Object> maps) {
        manager.userNoticeList(maps);
    }

    /**
     * 首页用户消息已读/置顶
     *
     * @param maps
     */
    @Override
    public void userNoticeRead(Map<String, Object> maps) {
        manager.userNoticeRead(maps);
    }

    /**
     * 首页用户消息置顶
     *
     * @param maps
     */
    @Override
    public void userNoticeTop(Map<String, Object> maps) {
        manager.userNoticeTop(maps);
    }


    /**
     * 首页消息删除
     *
     * @param maps
     */
    @Override
    public void userNoticeDelete(Map<String, Object> maps) {
        manager.userNoticeDelete(maps);
    }

    /**
     * 联系人删除
     *
     * @param maps
     */
    public void contactDelete(Map<String, Object> maps) {
        manager.contactDelete(maps);
    }

    /**
     * 巡护上报
     *
     * @param patrolId    巡护表id
     * @param type        类型 1：有害生物；2：盗砍乱伐；3：毁林开垦；4：乱捕乱猎；5：牲畜毁林；6：自然灾害；7：野生动物；8：野生植物；9：其他。
     * @param remark      备注
     * @param longitude   经度
     * @param latitude    纬度
     * @param findTime    发现时间
     * @param findAddress 发现地点
     * @param imageFile   照片
     * @param voiceFile   音频
     * @param videoFile   视频
     */
    public void savePatrol(int patrolId, int type, String remark, BigDecimal longitude, BigDecimal latitude,
                           String findTime, String findAddress, File[] imageFile, File[] voiceFile, File[] videoFile) {
        manager.savePatrol(patrolId, type, remark, longitude, latitude,
                findTime, findAddress, imageFile, voiceFile, videoFile);
    }

    public void recognition(Map<String, RequestBody> bodyMap, MultipartBody.Part part) {
        manager.recognition(bodyMap, part);
    }

    public void recognitions(Map<String, RequestBody> bodyMap, List<MultipartBody.Part> part, List<MultipartBody.Part> part1, List<MultipartBody.Part> part2) {
        manager.recognitions(bodyMap, part, part1, part2);
    }

    /**
     * 提交工作日志
     *
     * @param maps
     */
    public void submitWorkLog(Map<String, Object> maps) {
        manager.submitWorkLog(maps);
    }

    /**
     * 查询工作日志
     *
     * @param maps
     */
    @Override
    public void queryWorkLog(Map<String, Object> maps) {
        manager.queryWorkLog(maps);
    }

    /**
     * 道路信息采集roadInfoCollection
     *
     * @param maps
     */
    @Override
    public void roadInformationInsert(Map<String, Object> maps) {
        manager.roadInformationInsert(maps);
    }

    /**
     * 新增火场资源信息接口fireInformationInsert
     *
     * @param maps
     */
    @Override
    public void fireInformationInsert(Map<String, Object> maps) {
        manager.fireInformationInsert(maps);
    }

    /**
     * 用户道路资源信息查询loadRoadinformation
     *
     * @param maps
     */
    @Override
    public void loadRoadinformation(Map<String, Object> maps) {
        manager.loadRoadinformation(maps);
    }

    /**
     * 查询资源信息列表loadFireinformation
     *
     * @param maps
     */
    @Override
    public void loadFireinformation(Map<String, Object> maps) {
        manager.loadFireinformation(maps);
    }

    /**
     * 查询用户所有资源信息列表loadResourceInformation
     *
     * @param maps
     */
    @Override
    public void loadResourceInformation(Map<String, Object> maps) {
        manager.loadResourceInformation(maps);
    }

    /**
     * SOS uploadSos
     *
     * @param maps
     * @param part
     */
    @Override
    public void uploadSos(Map<String, RequestBody> maps, List<MultipartBody.Part> part) {
        manager.uploadSos(maps, part);
    }

    /**
     * 上传资源采集uploadResource
     *
     * @param maps
     * @param part
     */
    @Override
    public void uploadResource(Map<String, RequestBody> maps, List<MultipartBody.Part> part, List<MultipartBody.Part> part1) {
        manager.uploadResource(maps, part, part1);
    }

    /**
     * 新增用户信息insertUserInfo
     *
     * @param maps
     * @param part
     */
    @Override
    public void insertUserInfo(Map<String, RequestBody> maps, MultipartBody.Part part) {
        manager.insertUserInfo(maps, part);
    }

    /**
     * 查詢個人信息loadPersonInfo
     *
     * @param maps
     */
    @Override
    public void loadPersonInfo(Map<String, Object> maps) {
        manager.loadPersonInfo(maps);
    }

    /**
     * 获取资源类型loadResourceType
     *
     * @param maps
     */
    @Override
    public void loadResourceType(Map<String, Object> maps) {
        manager.loadResourceType();
    }

    /**
     * 用户管理loadUserManager
     *
     * @param maps
     */
    @Override
    public void loadUserManager(Map<String, Object> maps) {
        manager.loadUserManager(maps);
    }

    /**
     * 编辑（删除）用户deleteUser
     *
     * @param maps
     */
    @Override
    public void deleteUser(Map<String, Object> maps) {
        manager.deleteUser(maps);
    }

    /**
     * 查询通讯信息voiceintercomByGrui
     *
     * @param maps
     */
    @Override
    public void voiceintercomByGrui(Map<String, Object> maps) {
        manager.voiceintercomByGrui(maps);
    }

    /**
     * 新增通讯消息insertVoiceintercom
     * @param maps
     * @param part
     */
    @Override
    public void insertVoiceintercom(Map<String, RequestBody> maps, MultipartBody.Part part) {
        manager.insertVoiceintercom(maps, part);
    }

    /**
     * 上班打卡
     *
     * @param maps
     */
    public void submitOnSign(Map<String, Object> maps) {
        manager.submitOnSign(maps);
    }

    /**
     * 下班打卡
     *
     * @param maps
     */
    public void submitOffSign(Map<String, Object> maps) {
        manager.submitOffSign(maps);
    }

    /**
     * 查询打卡记录
     *
     * @param maps
     */
    public void querySignByDate(Map<String, Object> maps) {
        manager.querySignByDate(maps);
    }

    /**
     * 查询热点核查
     *
     * @param maps
     */
    public void queryHotList(Map<String, Object> maps) {
        manager.queryHotList(maps);
    }

    /**
     * 查询热点核查详情
     *
     * @param maps
     */
    public void queryHotDetail(Map<String, Object> maps) {
        manager.queryHotDetail(maps);
    }

    /**
     * 查询报警详情
     *
     * @param maps
     */
    public void queryAlarmDetail(Map<String, Object> maps) {
        manager.queryAlarmDetail(maps);
    }

    /**
     * 查询卡口详情
     *
     * @param maps
     */
    public void queryBayonetDetail(Map<String, Object> maps) {
        manager.queryBayonetDetail(maps);
    }

    /**
     * 查询基站详情
     *
     * @param maps
     */
    public void queryStationDetail(Map<String, Object> maps) {
        manager.queryStationDetail(maps);
    }

    /**
     * 核查反馈
     *
     * @param bodyMap
     * @param part
     * @param part1
     * @param part2
     */
    public void checkFeedBack(Map<String, RequestBody> bodyMap, List<MultipartBody.Part> part, List<MultipartBody.Part> part1, List<MultipartBody.Part> part2) {
        manager.checkFeedBack(bodyMap, part, part1, part2);
    }

    /**
     * 查询个人详情
     *
     * @param maps
     */
    public void getUserDetail(Map<String, Object> maps) {
        manager.getUserDetail(maps);
    }

    /**
     * 查询GPS设备
     *
     * @param maps
     */
    public void queryGPSList(Map<String, Object> maps) {
        manager.queryGPSList(maps);
    }

    /**
     * 查询车辆设备
     *
     * @param maps
     */
    public void queryCarList(Map<String, Object> maps) {
        manager.queryCarList(maps);
    }

    /**
     * 查询报警核查
     *
     * @param maps
     */
    public void queryAlarmList(Map<String, Object> maps) {
        manager.queryAlarmList(maps);
    }

    /**
     * 查询卡口
     *
     * @param maps
     */
    public void queryBayonetList(Map<String, Object> maps) {
        manager.queryBayonetList(maps);
    }

    /**
     * 查询基站
     *
     * @param maps
     */
    public void queryStationList(Map<String, Object> maps) {
        manager.queryStationList(maps);
    }

    /**
     * 报警核查反馈
     *
     * @param bodyMap
     * @param part
     * @param part1
     * @param part2
     */
    public void alarmCheckFeedBack(Map<String, RequestBody> bodyMap, List<MultipartBody.Part> part, List<MultipartBody.Part> part1, List<MultipartBody.Part> part2) {
        manager.alarmCheckFeedBack(bodyMap, part, part1, part2);
    }

    /**
     * 查询巡护轨迹
     *
     * @param maps
     */
    public void queryPatrolTrail(Map<String, Object> maps) {
        manager.queryPatrolTrail(maps);
    }

    /**
     * 新增巡护记录
     *
     * @param maps
     */
    public void addPatrolRecord(Map<String, Object> maps) {
        manager.addPatrolRecord(maps);
    }

    /**
     * 新增联系人
     *
     * @param maps
     */
    public void addContact(Map<String, Object> maps) {
        manager.addContact(maps);
    }

    /**
     * 查询巡护发现
     *
     * @param maps
     */
    public void queryPatrolFind(Map<String, Object> maps) {
        manager.queryPatrolFind(maps);
    }

    /**
     * 查询巡护信息
     *
     * @param maps
     */
    public void queryPatrolInfo(Map<String, Object> maps) {
        manager.queryPatrolInfo(maps);
    }

    /**
     * 更新巡护记录
     *
     * @param maps
     */
    public void updatePatrolInfo(Map<String, Object> maps) {
        manager.updatePatrolInfo(maps);
    }


    /**
     * 查询道路详情
     *
     * @param maps
     */
    public void queryRoadDetail(Map<String, Object> maps) {
        manager.queryRoadDetail(maps);
    }

    /**
     * 查询火场详情
     *
     * @param maps
     */
    public void queryFireDetail(Map<String, Object> maps) {
        manager.queryFireDetail(maps);
    }

    /**
     * 查询资源详情
     *
     * @param maps
     */
    public void queryResourceDetail(Map<String, Object> maps) {
        manager.queryResourceDetail(maps);
    }

    /**
     * 查询联系人列表
     *
     * @param maps
     */
    public void queryContactList(Map<String, Object> maps) {
        manager.queryContactList(maps);
    }

}
